package com.lex.crossgate.admin.modules.sys.service;

import com.lex.crossgate.common.constants.R;;
import com.lex.crossgate.admin.modules.sys.entity.SysMenu;

import java.util.List;
import java.util.Set;


public interface SysMenuService {

    /**
     * @description: 保存角色
     * @author 李贝留斯
     * @date 2018/5/12 21:55
     */
    public R save(SysMenu SysMenu);
    /**
     * @description: 保存
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/10 22:45
     */
    public R delete(String ids);
    /**
     * @description: 更新
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/10 22:45
     */
    public R update(SysMenu SysMenu);
    /**
     * @description: 获取用户列表
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/8 21:28
     */
    List<SysMenu> getSysMenu(String name,String menuId);
    /**
     * @description: 获取用户列表
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/8 21:28
     */
    List<SysMenu> getOneTwoMenu();
    /**
     * @description: 获取用户列表
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/8 21:28
     */
    List<SysMenu> getSysMenu();
    /**
     * @description: 根据ID查询
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/4 22:10
     */
    SysMenu getMenuById(String id);
    /**
     * TODO: 
     * @author 李贝留斯
     * @email sunyadongsyd@163.com
     * @date 2018/5/15 14:20
     */
    public List<SysMenu> listMenuTree(String userId);

    Set<String> listPerms(String userId);

}
